package top.buluoluo.productservice.dto.response;

import lombok.Data;
import top.buluoluo.productservice.entity.ProductBrand;
import java.util.List;

/**
 * 品牌数据传输对象
 * 用于分类关联品牌查询、智能搜索等场景
 */
@Data
public class BrandDTO {
    // === 基础信息 ===
    private Long id;
    private String name;
    private String logoUrl;
    private String description;
    private Integer status;

    // === 业务扩展字段 ===
    private Long productCount;          // 关联商品总数（搜索/分类页用）
//    private List<CategoryPath> relatedCategories; // 关联分类路径（智能搜索用）

    // === 搜索增强字段 ===
    private Double relevanceScore;     // 搜索相关性分数（0-1）
    private List<String> matchedKeywords; // 匹配的搜索关键词

    // === 工厂方法 ===
    public static BrandDTO fromEntity(ProductBrand brand) {
        BrandDTO dto = new BrandDTO();
        dto.setId(brand.getId());
        dto.setName(brand.getName());
        dto.setLogoUrl(brand.getLogoUrl());
        dto.setDescription(brand.getDescription());
        dto.setStatus(brand.getStatus());
        return dto;
    }

//    // === 内部类：分类路径 ===
//    @Data
//    public static class CategoryPath {
//        private Long id;
//        private String path; // 如"手机数码/智能手机"
//        private Boolean isPrimary; // 是否主营类目
//    }
}